The present invention generally relates to solid modeling methods for modeling solids which include free-form surfaces, and more particularly to a solid modeling method which uses a boundary representation to describe the solids.
In computer aided design (CAD) systems for designing a three-dimensional structure, there are CAD systems which are based on a solid modeler. Such CAD systems are presently used in various fields and has become popular. For this reason, there are demands for a powerful solid modeler. Presently, one of the highest of such demands is the realization of an improved CAD system for modeling solids which include free-form surfaces by carrying out a set operation. Several of such CAD systems have been proposed, but there are problems in that the processing speed is slow and the reliability is poor.
According to the conventional method of modeling a solid having free-form surfaces, an intersecting line of a curved surface and a plane and an intersecting line of a curved surface and a curved surface are first calculated. The methods of calculating the intersecting lines can be generally categorized into two, a first method being the method disclosed in E. G. Houghton et al., "Implementation of a Divide-and-Conquer Method for Intersection of Parametric Surfaces", Computer Aided Geometric Design, Vol. 2, No. 1, pp. 173-183, 1985 and a second method being the intersection tracing method disclosed in R. E. Barnhill et al., "Surface/Surface Intersection", Computer Aided Geometric Design, Vol. 4, No. 1, pp. 3-16, 1987. The set operation is carried out based on the intersecting lines calculated according to the first or second method.
The curved surface obtained by the set operation is generally described by a trimmed surface patch disclosed in M. S. Casale, "Free-Form Solid Modeling with Trimmed Surface Patches", IEEE CG & A, Vol. 7, No. 1, pp. 33-43, 1987. For example, the trimmed surface patch uses a portion of a patch to describe a shape as shown in FIG. 1. In FIG. 1, regions r1 and r2 are used to describe the shape.
However, the above described method suffers the following problems.
Firstly, when a bicubic parameter surface is used as the curved surface, an intersecting line of a curved surface and a curved surface becomes a 324-degree polynomial and an intersecting line of a curved surface and a plane becomes an 18-degree polynomial, as discussed in R. T. Farouki, "Direct Surface Evaluation", Geometric Modeling", G. Farin, Ed., SIAM, Philadelphia, pp. 319-334, 1987. Accordingly, it is not easy to stably obtain the intersecting lines for all cases, and for this reason, the reliability of the set operation which is based on obtaining the intersecting lines is not high.
Secondly, the degree of the intersecting lines is generally high and it is difficult to analytically obtain the intersecting lines. Thus, the intersecting lines are conventionally approximated by a large number of line segments or spline curves. In structural design, the intersecting lines play an important role and it is natural that the designer wishes to be able to modify the curves. But a local modification of edge lines of the solid described by the trimmed surface patches is not permitted.
Therefore, a known method describes the curved surfaces of the solid by the trimmed surface patches which describe the curved surface by an equation and a boundary of a region occupied by the curved surface, and calculates the intersecting portions of two solids when carrying out the set operation of the two solids. However, it is difficult to accurately and stably obtain the intersecting lines of the curved surfaces according to this method. For example, when a bicubic parametric surface is used as the curved surface, an intersecting line becomes a curved described by a 324-degree polynomial. In addition, according to this method, the generated intersecting lines cannot be modified. When the calculation of the intersecting line is in error, for example, there is also a problem in that the set operation becomes in error.